home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / Report Writers / Crystal Repot 9.0 Full CD version / Setup.exe / ProgramF / CRYSTAL / CRW9 / DEV / INCLUDE / Uxfodbc.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-01-15  |  2.4 KB  |  115 lines

  1.  
  2. //<HEADER_BEGIN>
  3. //================================================
  4. //File name: uxfodbc.h
  5. //Date : January, 15 2002  12:15
  6. //Copyright (c) 2002 - Crystal Decisions Corp.
  7. //================================================
  8. //<HEADER_END>
  9.  
  10. #if !defined (UXFODBC_H)
  11. #define UXFODBC_H
  12.  
  13. // Set 1-byte structure alignment
  14. #if defined (__BORLANDC__) // Borland C/C++
  15.   #pragma option -a-
  16. #elif defined (_MSC_VER) // Microsoft Visual C++
  17.   #if _MSC_VER >= 900 // MSVC 2.x and later
  18.     #pragma pack (push)
  19.   #endif
  20.   #pragma pack (1)
  21. #endif
  22.  
  23. #if defined (__cplusplus)
  24. extern "C"
  25. {
  26. #endif
  27.  
  28. #define MAX_ODBC_SOURCES        100         // Max. # of ODBC data sources
  29. #define UXFODBCType            MAX_ODBC_SOURCES + 1
  30.  
  31. typedef struct UXFODBCOptionsA
  32. {
  33.     WORD structSize;
  34.  
  35.     char FAR *dataSourceName;
  36.     char FAR *dataSourceUserID;
  37.     char FAR *dataSourcePassword;
  38.     char FAR *exportTableName;
  39.  
  40.     WORD nEncodedBytes;
  41.  
  42. #if defined (__cplusplus)
  43. public :
  44.     UXFODBCOptionsA()
  45.     {
  46.         structSize = sizeof(UXFODBCOptionsA);
  47.         dataSourceName = NULL;
  48.         dataSourceUserID = NULL;
  49.         dataSourcePassword = NULL;
  50.         exportTableName = NULL;
  51.  
  52.         nEncodedBytes = 0;
  53.     };
  54. #endif
  55. }
  56.     UXFODBCOptionsA;
  57.  
  58. typedef struct UXFODBCOptionsW
  59. {
  60.     WORD structSize;
  61.  
  62.     wchar_t FAR *dataSourceName;
  63.     wchar_t FAR *dataSourceUserID;
  64.     wchar_t FAR *dataSourcePassword;
  65.     wchar_t FAR *exportTableName;
  66.  
  67.     WORD nEncodedBytes;
  68.  
  69. #if defined (__cplusplus)
  70. public :
  71.     UXFODBCOptionsW()
  72.     {
  73.         structSize = sizeof(UXFODBCOptionsW);
  74.         dataSourceName = NULL;
  75.         dataSourceUserID = NULL;
  76.         dataSourcePassword = NULL;
  77.         exportTableName = NULL;
  78.  
  79.         nEncodedBytes = 0;
  80.     };
  81. #endif
  82. }
  83.     UXFODBCOptionsW;
  84.  
  85.  
  86. #define UXFODBCOptionsASize (sizeof (UXFODBCOptionsA))
  87. #define UXFODBCOptionsWSize (sizeof (UXFODBCOptionsW))
  88.  
  89.  
  90. #ifdef UNICODE
  91. typedef UXFODBCOptionsW UXFODBCOptions;
  92. #define UXFODBCOptionsSize UXFODBCOptionsWSize 
  93. #else
  94. typedef UXFODBCOptionsA UXFODBCOptions;
  95. #define UXFODBCOptionsSize UXFODBCOptionsASize
  96. #endif  //UNICODE 
  97.  
  98.  
  99. #if defined (__cplusplus)
  100. }
  101. #endif
  102.  
  103. // Reset structure alignment
  104. #if defined (__BORLANDC__)
  105.   #pragma option -a.
  106. #elif defined (_MSC_VER)
  107.   #if _MSC_VER >= 900
  108.     #pragma pack (pop)
  109.   #else
  110.     #pragma pack ()
  111.   #endif
  112. #endif
  113.  
  114. #endif 
  115.